package com.ovopark.organize.server.service;

import com.ovopark.organize.server.model.entity.FranchiseesApprovalTemplateFieldValue;
import com.ovopark.organize.server.model.vo.FranchiseesApprovalTemplateValueVo;

import java.util.List;
import java.util.Map;

/**
 * @Description: 加盟商立项模板选项数据
 * @Author:zll
 * @Date:
 */
public interface FranchiseesApprovalTemplateFieldValueService {


    /** 
     * @description: 获取字段选项数据
     * @param: [groupId, fieldIdList]
     * @return: java.util.Map<java.lang.Integer,com.ovopark.organize.server.model.entity.FranchiseesApprovalTemplateFieldValue>
     * @author wxb
     * @date: 2024/4/14 11:46
     */ 
    Map<Integer, FranchiseesApprovalTemplateFieldValue> getFieldValueList(Integer sectionId, Integer templateId, Integer groupId, Integer approvalId, String version, List<Integer> fieldIdList);

    /**
     * @description: 保存模板字段值
     * @param: [vo, userId]
     * @return: void
     * @author wxb
     * @date: 2024/6/3 15:44
     */
    void saveValue(FranchiseesApprovalTemplateValueVo vo, Integer userId);

    /** 
     * @description: 获取模板字段值 根据templateUserId
     * @param: [templateUserId, groupId]
     * @return: java.util.List<com.ovopark.organize.server.model.entity.FranchiseesApprovalTemplateFieldValue>
     * @author wxb
     * @date: 2024/6/5 10:18
     */ 
    List<FranchiseesApprovalTemplateFieldValue> getFieldValueListByTemplateUserId(Integer templateUserId, Integer groupId);

    /** 
     * @description: 删除数据
     * @param: [templateUserId]
     * @return: void
     * @author wxb
     * @date: 2024/6/7 16:36
     */ 
    void deleteByTemplateUserId(Integer templateUserId);
    
}
